package com.zhihuishu.micro.course.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.zhihuishu.micro.course.model.MeetCourse;

/**
 * 
 * @author	ylj
 * @date	2016年8月12日 下午16:30:01
 */
public interface MeetCourseMapper {
	
	/**
	 * 查询见面课对象列表根据见面课id
	 * @author Rain
	 * @time 2016年9月12日-下午4:41:54
	 * @param meetCourseId
	 * @return
	 */
	List<MeetCourse> getMeetCourseList(Long courseId);
	
	/**
	 * 查询见面课对象
	 * @author Rain
	 * @time 2016年9月12日-下午4:40:12
	 * @param meetCourseId
	 * @return
	 */
	MeetCourse getMeetCourse(Long meetCourseId);
	
	/**
	 * 新增见面课对象
	 * @author Rain
	 * @time 2016年9月12日-下午4:40:27
	 * @param meetCourse
	 */
	void save(MeetCourse meetCourse);

	/**
	 * 删除见面课对象（逻辑删除）
	 * @author Rain
	 * @time 2016年9月12日-下午4:40:40
	 * @param meetCourseId
	 */
	void remove(Long meetCourseId);

	/**
	 * 修改见面课对象
	 * @author Rain
	 * @time 2016年9月12日-下午4:41:05
	 * @param meetCourse
	 */
	void update(MeetCourse meetCourse);
	/**
	 * 根据课程id查询见面课数量
	 * @author yulijin
	 * @date 2016年8月12日 下午5:07:33
	 * @param courseId
	 * @return
	 */
	int findMeetCourseCount(Long courseId);

	/**
	 * 根据课程ID集合查询见面课最近更新时间
	 * @author ztl
	 * @param courseIds
	 * @return
	 */
	List<Map<String, Object>> getMeetCourseUpdateTimeByCourseIds(@Param("courseIds")List<Long> courseIds);
	/**
	 * 新增见面课
	 * @author yulijin
	 * @date 2016年12月7日 下午5:40:50 
	 * @param meetCourse
	 * @return
	 */
	void insert(MeetCourse meetCourse);
}
